Firebird a cas/datum v SQL dotazu
Otázka od: Jiri Rocnak
11. 11. 2004 12:11
Ahoj.
Asi lama dotaz, ale potreboval bych ve firebirdu do sql dotazu dostat cas na
serveru.
Pred casem jsem to resil nejakym NOW(), ale to bylo asi na nejakem jinem
serveru.
Na netu hledam jak sileny, ale asi uz nedokazu zadat ani dotaz do
vyhledavace.
Tlaci me totiz cas. Poradte, pls.
Diky, Jiri.
Odpovedá: Milan Tomes
11. 11. 2004 12:20
Select 'NOW' from RDB$DATABASE
S pozdravem
Milan Tomes
> [mailto:delphi-l-owner@clexpert.cz]On Behalf Of Jiri Rocnak
> Sent: Thursday, November 11, 2004 12:02 PM
>
> Asi lama dotaz, ale potreboval bych ve firebirdu do sql dotazu
> dostat cas na
> serveru.
Odpovedá: petr palicka
11. 11. 2004 12:40
Jiri Rocnak wrote:
> Ahoj.
>
> Asi lama dotaz, ale potreboval bych ve firebirdu do sql dotazu dostat cas na
> serveru.
> Pred casem jsem to resil nejakym NOW(), ale to bylo asi na nejakem jinem
> serveru.
pouzij literal 'NOW'.
select cast('NOW' as datetime)... /* nebo jaky je to spravne typ */
peca
Odpovedá: Jiri Rocnak
12. 11. 2004 11:36
Nejak se mi nedari.
Uz jsem z toho volaaky zmeteny.
Dospel jsem tak daleko, ze bych se spokojil i s casem stanice,
jal jsem se tedy pridat do dotazu parametr a ejhle, zase nic:
with DSet.Params.CreateParam(ftDate,'Datum',ptInput) do asDate := Date;
nebo
with DSet.Params.CreateParam(ftDateTime,'Datum',ptInput) do asDateTime :=
Now;
Vypisuje chybu: Conversion error from string "2004-11-12"
Typy jsou prece spravne. ?????
> pouzij literal 'NOW'.
> select cast('NOW' as datetime)... /* nebo jaky je to spravne typ */
>
> peca
cast('NOW' as date) taky nejak chybuje
Odpovedá: Jaroslav Uher
12. 11. 2004 14:12
On 12 Nov 2004 at 11:11, Jiri Rocnak wrote:
> Nejak se mi nedari.
> Uz jsem z toho volaaky zmeteny.
> Dospel jsem tak daleko, ze bych se spokojil i s casem stanice,
za prve: proc stanice?
Tam si muze kazdy nastavit, co chce.
S tim si moc nepomuzes
Rozhodne doporucuji DateTime ze serveru (SP nebo trigger).
> jal jsem se tedy pridat do dotazu parametr a ejhle, zase nic:
>
> with DSet.Params.CreateParam(ftDate,'Datum',ptInput) do asDate :=
> Date; nebo with DSet.Params.CreateParam(ftDateTime,'Datum',ptInput) do
> asDateTime := Now;
>
> Vypisuje chybu: Conversion error from string "2004-11-12"
>
> Typy jsou prece spravne. ?????
co je DSet ?
u TIBSQL :
IBSQL1.Params[2].AsDateTime := Now;
neni problem
Jarek Uher
Odpovedá: Jiri Rocnak
12. 11. 2004 15:06
No, uz jsem zjistil vo co go.
V te databazi (strukturu jsem nevytvarel ja) byla polozka, ve ktere je
ulozeno datum typu Numeric(x,y) a proto nejelo to 'now' - nesoulad typu.
Bohuzel z chybove hlasky mi to nebylo zcela jasne.
Jinak dekuji za napady.
J.